package com.gqz.equip.api;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.gqz.common.core.domain.R;
import com.gqz.common.core.domain.RequestForm;
import com.gqz.equip.vo.EnWzJfEquipVo;
import com.gqz.equip.vo.WzEquipTjVo;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;


/**
 * 新能源设备信息
 *
 * @author gqz20
 * @date 2023/02/25
 */
@RequestMapping("/en-wz-jf-equip")
public interface EnWzJfEquipApi {
    @PostMapping("/{id}")
    public R<List<EnWzJfEquipVo>> getById(
            @PathVariable("id") String id);

    @PostMapping("/page")
    public R<Page<EnWzJfEquipVo>> page(
            @RequestBody RequestForm<EnWzJfEquipVo> requestForm);

    @PostMapping("/count")
    public R<Long> count(
            @RequestBody RequestForm<EnWzJfEquipVo> requestForm);

    @PostMapping("/insert")
    public R<Integer> insert(
            @RequestBody List<EnWzJfEquipVo> forms);

    @PostMapping("/update")
    public R<Integer> update(
            @RequestBody List<EnWzJfEquipVo> forms);

    @PostMapping("/delete")
    public R<Boolean> delete(
            @RequestBody List<String> ids);

    /**
     * 导出excel
     *
     * @param response    回答
     * @param requestForm 申请表
     */
    @PostMapping("/export/excel")
    public void exportExcel(
            HttpServletResponse response,
            @RequestBody RequestForm<EnWzJfEquipVo> requestForm);

    /**
     * 新能源设备信息-jfEquipTj设备统计
     *
     * @param vos 你
     * @return {@link R}<{@link WzEquipTjVo}>
     */
    @PostMapping("/jfEquipTj")
    public R<WzEquipTjVo> jfEquipTj(
            @RequestBody EnWzJfEquipVo vos);


}
